import os

# 定义视频文件扩展名列表
video_extensions = ['.mp4', '.webm','.mp3','.jpg','.png']

# 获取当前文件夹内的所有文件
files = os.listdir('..')

# 找出已经符合数字命名规则的最大编号
existing_numbers = []
for file in files:
    file_extension = os.path.splitext(file)[1].lower()
    if file_extension in video_extensions:
        try:
            number = int(os.path.splitext(file)[0])
            existing_numbers.append(number)
        except ValueError:
            continue

# 如果有符合数字命名规则的文件，找到最大编号；否则从 1 开始
if existing_numbers:
    max_number = max(existing_numbers)
else:
    max_number = 0

# 初始化计数器，从最大编号的下一个数字开始
counter = max_number + 1

# 遍历所有文件
for file in files:
    # 获取文件扩展名
    file_extension = os.path.splitext(file)[1].lower()

    # 检查文件扩展名是否为视频文件
    if file_extension in video_extensions:
        try:
            # 尝试将文件名转换为数字
            int(os.path.splitext(file)[0])
            # 如果能转换成功，说明文件名已经符合数字命名规则，跳过
            continue
        except ValueError:
            # 文件名不符合数字命名规则，进行重命名
            while True:
                # 生成新的文件名
                new_name = f"{counter:02d}{file_extension}"

                # 检查新文件名是否已存在
                if not os.path.exists(new_name):
                    # 重命名文件
                    os.rename(file, new_name)
                    print(f"Renamed {file} to {new_name}")
                    break

                # 如果新文件名已存在，增加计数器
                counter += 1

            # 无论是否重命名，计数器都加 1
            counter += 1